﻿//*** Guidance generated code ***//
using System;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics.Contracts;
using System.Linq;

using ProjectBase.Core.Settings;

namespace ProjectBase.Core.Diagnostics
{
    [ContractClassFor(typeof(IBaseSettingsProvider))]
    internal abstract class BaseSettingsProvider : IBaseSettingsProvider
    {
        public IBaseSettings BaseSettings
        {
            get
            {
                throw new NotImplementedException();
            }
        }
        public string CreateAbsolutePath(string path)
        {
            Contract.Requires(path.IsNotEmpty(), "parameter path cannot be null nor empty");
            throw new NotImplementedException();
        }
        public string CreateAppDataPath(string fileName)
        {
            Contract.Requires(fileName.IsNotEmpty(), "parameter fileName cannot be null nor empty");
            Contract.Requires(!fileName.Contains('\\') && !fileName.Contains('/'),
                @" parameter fileName cannot contain '/' or '\' ");
            throw new NotImplementedException();
        }
        public string DefaultFilePath(string fileNameOrPath)
        {
            Contract.Requires(fileNameOrPath.IsNotEmpty(), "parameter fileNameOrPath cannot be null nor empty");
            throw new NotImplementedException();
        }
        public IDbCommand NewDbCommand()
        {
            throw new NotImplementedException();
        }
    }
}